#include<stdio.h>
#include<assert.h>
#include<stdlib.h>
#include<stdbool.h>

typedef int STDataType;
typedef struct Stack
{
    STDataType* a;
    //标识栈顶的位置
    int top;
    int capacity;
}ST;

//初始化
void STInit(ST* pst);

//销毁栈
void STDestroy(ST* pst);

//栈顶插入删除
void STPush(ST* pst,STDataType x);
void STPop(ST* pst);

//判断
bool STEmpty(ST* pst);
//个数
int STSize(ST* pst);

//栈顶
STDataType STTop(ST* ps);